const fs = require('fs');
const path = require('path');

// 输入文件路径
const inputFile = path.join(__dirname, 'nanjingvillage.json');
// 输出文件路径
const outputFile = path.join(__dirname, 'nanjingvillage_processed.json');

console.log('开始处理文件...');

// 读取文件
fs.readFile(inputFile, 'utf8', (err, data) => {
  if (err) {
    console.error('读取文件失败:', err);
    return;
  }

  try {
    // 解析JSON数据
    const geojsonData = JSON.parse(data);

    // 检查数据类型是否为数组
    if (!Array.isArray(geojsonData)) {
      console.error('数据不是数组格式');
      return;
    }

    console.log(`找到 ${geojsonData.length} 个Feature对象`);

    // 处理每个Feature对象，删除不需要的属性
    const processedData = geojsonData.map((feature, index) => {
      // 创建一个新对象，只保留需要的属性
      const { layer, source, sourceLayer, state, ...rest } = feature;
      return rest;
    });

    console.log('处理完成，开始保存文件...');

    // 将处理后的数据保存为新文件
    fs.writeFile(outputFile, JSON.stringify(processedData, null, 2), 'utf8', (err) => {
      if (err) {
        console.error('保存文件失败:', err);
        return;
      }
      console.log(`文件已成功保存到: ${outputFile}`);
      console.log('处理完成！');
    });
  } catch (error) {
    console.error('JSON解析错误:', error);
  }
});